package com.haoyeteng.sxbd.modular.fdc.pojo;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import org.hibernate.validator.constraints.Email;
import org.hibernate.validator.constraints.NotEmpty;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 用户表
 * </p>
 *
 * @author haoyeteng123
 * @since 2019-05-16
 */
@TableName("users")
public class Users extends Model<Users> {

    private static final long serialVersionUID = 1L;

    /**
     * 用户Id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 用户名
     */
    @TableField("name")
    @NotEmpty(message="用户名不能为空")
    private String name;
    /**
     *
     */
    @TableField("ident")
    private String ident;

    /**
     * 邮箱
     */
	@Email(message="邮箱格式错误")
    @TableField("email")
    private String email;

	/**
     * username
     */
    @TableField("username")
    private String username;

    /**
     * password
     */
    @TableField("password")
    private String password;
    /**
     * ident_type
     */
    @TableField("ident_type")
    private int identType;
    /**
     * ident_num
     */
    @TableField("ident_num")
    private String identNum;

    /**
     * gender
     */
    @TableField("gender")
    private int gender;

    /**
     * birth
     */
    @TableField("birth")
    private Date birth;

    /**
     * phone
     */
    @TableField("phone")
    private String phone;
    /**
     * phone2
     */
    @TableField("phone2")
    private String phone2;
    /**
     * comments
     */
    @TableField("comments")
    private String comments;
    /**
     * status
     */
    @TableField("status")
    private int status;
    /**
     * sn
     */
    @TableField("sn")
    private String sn;
    /**
     * sn_pc
     */
    @TableField("sn_pc")
    private String snPc;
    /**
     * heart_time
     */
    @TableField("heart_time")
    private Date heartTime;
    /**
     * heart_time_pc
     */
    @TableField("heart_time_pc")
    private Date heartTimePc;
    /**
     * link_type
     */
    @TableField("link_type")
    private String linkType;
    /**
     * sort_order
     */
    @TableField("sort_order")
    private Long sortOrder;
    /**
     * heart_ip
     */
    @TableField("heart_ip")
    private String heartIp;
    /**
     * heart_ip_pc
     */
    @TableField("heart_ip_pc")
    private String heartIpPc;
    /**
     * offline_sms
     */
    @TableField("offline_sms")
    private String offlineSms;
    /**
     * offline_notice
     */
    @TableField("offline_notice")
    private String offlineNotice;
    /**
     * heart_ver
     */
    @TableField("heart_ver")
    private String heartVer;
    /**
     * wx_openid
     */
    @TableField("wx_openid")
    private String wxOpenid;
    /**
     * heart_time_wx
     */
    @TableField("heart_time_wx")
    private String heartTimeWx;
    /**
     * wx_logout_time
     */
    @TableField("wx_logout_time")
    private String wxLogoutTime;








//    /**
//     * 最近登录时间
//     */
//    @TableField("latest_login_time")
//    private Date latestLoginTime;
//    /**
//     * 最近登录ip
//     */
//    @TableField("latest_login_ip")
//    private String latestLoginIp;
//    /**
//     * 身份证号码
//     */
//    @TableField("id_card")
//    private String idCard;
//    /**
//     * 微信账号
//     */
//    private String wechat;
//    /**
//     * 支付宝账号
//     */
//    private String alipay;
    /**
     * 创建时间
     */
    @TableField("create_time")
    private Date createTime;
    /**
     * 更新时间
     */
    @TableField("update_time")
    private Date updateTime;
//    /**
//     * 删除标记
//     */
//    @TableLogic
//    private Integer flag;


    @Override
    protected Serializable pkVal() {
        return null;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getIdent() {
        return ident;
    }

    public void setIdent(String ident) {
        this.ident = ident;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public int getIdentType() {
        return identType;
    }

    public void setIdentType(int identType) {
        this.identType = identType;
    }

    public String getIdentNum() {
        return identNum;
    }

    public void setIdentNum(String identNum) {
        this.identNum = identNum;
    }

    public int getGender() {
        return gender;
    }

    public void setGender(int gender) {
        this.gender = gender;
    }

    public Date getBirth() {
        return birth;
    }

    public void setBirth(Date birth) {
        this.birth = birth;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getPhone2() {
        return phone2;
    }

    public void setPhone2(String phone2) {
        this.phone2 = phone2;
    }

    public String getComments() {
        return comments;
    }

    public void setComments(String comments) {
        this.comments = comments;
    }

    public int getStatus() {
        return status;
    }

    public void setStatus(int status) {
        this.status = status;
    }

    public String getSn() {
        return sn;
    }

    public void setSn(String sn) {
        this.sn = sn;
    }

    public String getSnPc() {
        return snPc;
    }

    public void setSnPc(String snPc) {
        this.snPc = snPc;
    }

    public Date getHeartTime() {
        return heartTime;
    }

    public void setHeartTime(Date heartTime) {
        this.heartTime = heartTime;
    }

    public Date getHeartTimePc() {
        return heartTimePc;
    }

    public void setHeartTimePc(Date heartTimePc) {
        this.heartTimePc = heartTimePc;
    }

    public String getLinkType() {
        return linkType;
    }

    public void setLinkType(String linkType) {
        this.linkType = linkType;
    }

    public Long getSortOrder() {
        return sortOrder;
    }

    public void setSortOrder(Long sortOrder) {
        this.sortOrder = sortOrder;
    }

    public String getHeartIp() {
        return heartIp;
    }

    public void setHeartIp(String heartIp) {
        this.heartIp = heartIp;
    }

    public String getHeartIpPc() {
        return heartIpPc;
    }

    public void setHeartIpPc(String heartIpPc) {
        this.heartIpPc = heartIpPc;
    }

    public String getOfflineSms() {
        return offlineSms;
    }

    public void setOfflineSms(String offlineSms) {
        this.offlineSms = offlineSms;
    }

    public String getOfflineNotice() {
        return offlineNotice;
    }

    public void setOfflineNotice(String offlineNotice) {
        this.offlineNotice = offlineNotice;
    }

    public String getHeartVer() {
        return heartVer;
    }

    public void setHeartVer(String heartVer) {
        this.heartVer = heartVer;
    }

    public String getWxOpenid() {
        return wxOpenid;
    }

    public void setWxOpenid(String wxOpenid) {
        this.wxOpenid = wxOpenid;
    }

    public String getHeartTimeWx() {
        return heartTimeWx;
    }

    public void setHeartTimeWx(String heartTimeWx) {
        this.heartTimeWx = heartTimeWx;
    }

    public String getWxLogoutTime() {
        return wxLogoutTime;
    }

    public void setWxLogoutTime(String wxLogoutTime) {
        this.wxLogoutTime = wxLogoutTime;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    @Override
    public String toString() {
        return "Users{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", ident='" + ident + '\'' +
                ", email='" + email + '\'' +
                ", username='" + username + '\'' +
                ", password='" + password + '\'' +
                ", identType=" + identType +
                ", identNum='" + identNum + '\'' +
                ", gender=" + gender +
                ", birth=" + birth +
                ", phone='" + phone + '\'' +
                ", phone2='" + phone2 + '\'' +
                ", comments='" + comments + '\'' +
                ", status=" + status +
                ", sn='" + sn + '\'' +
                ", snPc='" + snPc + '\'' +
                ", heartTime=" + heartTime +
                ", heartTimePc=" + heartTimePc +
                ", linkType='" + linkType + '\'' +
                ", sortOrder=" + sortOrder +
                ", heartIp='" + heartIp + '\'' +
                ", heartIpPc='" + heartIpPc + '\'' +
                ", offlineSms='" + offlineSms + '\'' +
                ", offlineNotice='" + offlineNotice + '\'' +
                ", heartVer='" + heartVer + '\'' +
                ", wxOpenid='" + wxOpenid + '\'' +
                ", heartTimeWx='" + heartTimeWx + '\'' +
                ", wxLogoutTime='" + wxLogoutTime + '\'' +
                ", createTime=" + createTime +
                ", updateTime=" + updateTime +
                '}';
    }
}
